package com.jijuxie.system.service;

import com.jijuxie.system.domain.SysUser;
import com.jijuxie.system.domain.dto.UpdateUserInfoDTO;

public interface IUserService {
    
    /**
     * 根据用户ID查询用户
     */
    SysUser getUserById(Long userId);

    /**
     * 根据用户名查询用户
     */
    SysUser getUserByUsername(String username);

    /**
     * 根据手机号查询用户
     */
    SysUser getUserByPhone(String phone);

    /**
     * 更新用户信息
     */
    void updateUserInfo(Long userId, UpdateUserInfoDTO updateDTO);

    /**
     * 修改密码
     */
    void updatePassword(Long userId, String oldPassword, String newPassword);

    /**
     * 验证用户凭证
     */
    SysUser validateCredentials(String username, String password);

    /**
     * 手机号注册
     */
    SysUser registerByPhone(String phone);
} 